package day0326;

import java.util.Arrays;
import java.util.Scanner;

public class Test1 {
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);
        System.out.println("请输入砖块的总数量：");
        int bc=s.nextInt();//bc表示砖块的总数量
        System.out.println("请输入总人数：");
        int pc=s.nextInt();//pc表示总人数
        //调用moveBrick(bc,pc);//bc传给brickCount，  pcpersonCount
        String[]   rs=moveBrick(bc, pc);//用变量rs来接收moveBrick()返回的String[]  reuslt数组
        System.out.println(rs);//打印接收到的数组
    }

    /**
     * 文档注释： 文档注释中的内容可以生成一个参考手册
     * @param brickCount 砖块的数量
     * @param personCount 搬砖总人数
     */
    //          本方法需要返回一个String数组
    public static  String[]  moveBrick(int brickCount,  int  personCount){
        String[] result={};//定义一个用来存储结果的String数组
        //m表示男，  w表示女，  k表示小孩
        for (int m = 0; m < Math.min(brickCount/4, personCount) ; m++) {
            for (int w = 0; w < Math.min(brickCount/3, personCount); w++) {
                int k=personCount-m-w;
                if( k>0 && (m*4+ w*3+ k/2.0 == brickCount)){
                    //对result数组扩容一位， 再将计算出的结果存入到result数组中
                    result=Arrays.copyOf(result, result.length+1);
                    result[result.length-1]=  m+","+w+","+k;
                }
            }
        }//返回result中存储的多个计算结果
        return  result;
    }
}








